Information transmitted between communication devices may sometimes be lost or contain other errors. For example, in certain communication devices, the received power may fluctuate, or fade, over time. This results in data losses when the power drops below a threshold. Temporal diversity may be used to recover the lost data, which includes transmitting smaller blocks of data over a longer period of time. This allows the fraction of errors in any block to be kept small enough that it can be corrected with an error correcting code.